package com.dhcc.DRGsHosp.application;


import java.util.List;
import java.util.Map;

import com.dhcc.DRGsHosp.core.domain.MrTransDep;

/**
 * @title		:DRGsServiceApplication.java
 * @description	:DRGs服务
 * @author		:WangTeng
 * @date		:2017年9月5日
 * @version     :1.0
 * @copyright   :DHCC 2013-2014 
*/
public interface DrgsServiceApplication {
	
	/**
	 * @methodname    :findDeathDetailByDate
	 * @description   :查找死亡病例详情
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月5日
	 */
	public List<Map<String, Object>> findDeathDetail(String yearMonth);//date格式：YYYY-MM
	
	/**
	 * @methodname    :lowRiskDeathNum
	 * @description   :通过年份查询低风险死亡例数
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月7日
	 */
	public List<Map<String, Object>> findLowRiskDeathNum(String year);
	
	/**
	 * @methodname    :lowRiskDeathDetail
	 * @description   :通过年月查询低风险死亡患者详细信息
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月7日
	 */
	public List<Map<String, Object>> findLowRiskDeathDetail(String yearMonth);
	
	/**
	 * @methodname    :neonatalDeathNum
	 * @description   :通过年份查询新生儿死亡例数
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月7日
	 */
	public List<Map<String, Object>> findNeonatalDeathNum(String year);
	
	/**
	 * @methodname    :neonatalDeathDetail
	 * @description   :通过年月查询新生儿死亡死亡患者详细信息
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月8日
	 */
	public List<Map<String, Object>> findNeonatalDeathDetail(String yearMonth);
	
	/**
	 * @methodname    :surgicalCompNum
	 * @description   :通过年份查询手术并发症例数
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月8日
	 */
	public List<Map<String, Object>> findSurgicalCompNum(String year);
	
	/**
	 * @methodname    :surgicalCompDetail
	 * @description   :通过年月查询手术并发症原因详细数据
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月8日
	 */
	public List<Map<String, Object>> findSurgicalCompDetail(String yearMonth);
	
	/**
	 * @methodname    :adverseEventNum
	 * @description   :通过年份查询各种类型不良事件数量
	 * @param         :
	 * @author        :WangTeng
	 * @return        :
	 * @date          :2017年9月12日
	 */
	public List<Map<String, Object>> findAdverseEventNum(String year);

	/**
	 * 
	 *  executeQueryForList.  
	 *  @Description：执行查询SQL，并封装成MapList
	 *  @Author ChenHanlin
	 *  @param sql
	 *  @param condition
	 *  @return 
	 *  @Date:2017年9月19日下午5:23:26
	 */
	public List<Map<String, Object>> executeQueryForList(String sql,Map<String,Object> condition) ;

	/**
	 * 
	 *  findPmainindex.  
	 *  @Description：根据出院日期+病案号or入院日期+病案号查询主键
	 *  @Author ZouYiyu
	 *  @return 
	 *  @Date:2017年10月16日下午3:09:19
	 */
	public Map<String,String> findPmainindex(String mrNo,String inDate,String outDate);
/**
 * 
 *  getDepCodeByDesc.  
 *  @Description：根据科室代码获取描述
 *  @Author LiuHongjun
 *  @param pt0011
 *  @return 
 *  @Date:2017年10月17日上午10:31:49
 */
	public String getDepCodeByDesc(String pt0011);
/**
 * 
 *  getWarCodeByDesc.  
 *  @Description：根据科室代码获取描述
 *  @Author LiuHongjun
 *  @param pt0021
 *  @return 
 *  @Date:2017年10月17日上午10:32:16
 */
public String getWarCodeByDesc(String pt0021);
/**
 * 
 *  saveMrTransDep.  
 *  @Description：保存转科信息
 *  @Author LiuHongjun
 *  @param mrTransDep 
 *  @Date:2017年10月17日上午10:57:00
 */
public void saveMrTransDep(MrTransDep mrTransDep);

	/**
	 * 
	 *  findMedinsType.  
	 *  @Description：用医保描述从字典中获取相应的code
	 *  @Author ZouYiyu
	 *  @param medinsType
	 *  @return 
	 *  @Date:2017年10月17日上午9:27:22
	 */
	public Map<String,String>  findMedinsType(String medinsType);

	/**
	 * @Description 科室病组覆盖率
	 * @Author WangTeng
	 * @Date 2018/8/31 15:20
	 * @param year
	 * @return list
	 **/
    List<Map<String, Object>> findDeptDRGRatio(String year, String deptCode);

	
}

